package vwg.na.vwm.rh.motorsdk.modelo.procesos.servicios.ifaces;

import java.util.List;

import vwg.na.vwm.rh.modulo.pad.MontosMensuales;
import vwg.na.vwm.rh.modulo.pad.util.ResultadoEmpleado;
import vwg.na.vwm.rh.motorsdk.modelo.procesos.PadPlaneacionPersonalProceso;
import vwg.na.vwm.rh.motorsdk.modelo.procesos.entidadesgrales.PadCapturaEjercicio;
import vwg.na.vwm.rh.motorsdk.modelo.procesos.entidadesgrales.PadDefinicionBudget;
import vwg.na.vwm.rh.motorsdk.modelo.procesos.entidadesgrales.PadEstadoPlaneacionPersonal;
import vwg.na.vwm.rh.motorsdk.modelo.procesos.entidadesgrales.PadPPTipoMovimiento;

public interface IPadPlaneacionPersonalServicio {
	
	void saveDefinicionBudget(PadDefinicionBudget definicionBudget);
	
	void updateDefinicionBudget(PadDefinicionBudget definicionBudget);
	
	PadDefinicionBudget getDefinicionBudget(String unidadOrganizativa,
			String sociedad, int anio);
	
	List<PadDefinicionBudget> getDefinicionBudgetHijas(
			String unidadOrganizativa, String sociedad, int anio);
	
	List<PadPPTipoMovimiento> getTiposMovimiento();
	
	List<ResultadoEmpleado> findPersonal(String nombre, String paterno,
			String materno,String[] uos, String sociedad, String grado,
			String equidad, String evd);
	
	PadPlaneacionPersonalProceso getPlaneacionPersonal(int definicionBudget);
	
	PadEstadoPlaneacionPersonal getEstadoPlaneacion(int estado);
	
	PadCapturaEjercicio getCapturaEjercicio();
	
	MontosMensuales getMontosMensualesMovimientosPadre(String uoPadre, String sociedad, int anio);
	

}
